﻿Number.prototype.formatMoney = function (c, d, t) {
    var n = this, c = isNaN(c = Math.abs(c)) ? 2 : c, d = d == undefined ? "," : d, t = t == undefined ? "." : t, s = n < 0 ? "-" : "", i = parseInt(n = Math.abs(+n || 0).toFixed(c)) + "", j = (j = i.length) > 3 ? j % 3 : 0;
    return s + (j ? i.substr(0, j) + t : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t) + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : "");
};

$(document).ready(function () {
    if (ItemCount.val() != '') {
        $('#currentCategoryCount').text(ItemCount.val());
    }
    $('#ulProName input[type*="checkbox"]').attr('checked', true);
    // Checkbox before a product selected
    var totalPrice = 0;
    var productsID = '';

    $('#ulProName input[type*="checkbox"]:checked').each(function () {
        var tmQuan = $(this).parent().find('.Quantitys').val();
        totalPrice = parseInt(totalPrice, 10) + parseInt($(this).attr('rel'), 10) * parseInt(tmQuan, 10);
        productsID += $(this).attr('name') + '/';
    });
    $('#ProductPrice').text(totalPrice.formatMoney(0, ',', '.'));
    arrProductID.val(productsID);
    $('#ulProName input[type*="checkbox"]').live('change', function () {
        totalPrice = 0;
        if ($('#ulProName input[type*="checkbox"]:checked').length < 1) {
            $(this).attr('checked', 'checked');
        }
        $('#ulProName input[type*="checkbox"]:checked').each(function () {
            var tmQuan = $(this).parent().find('.Quantitys').val();
            totalPrice = parseInt(totalPrice, 10) + parseInt($(this).attr('rel'), 10) * parseInt(tmQuan, 10);
        });
        $('#ProductPrice').text(totalPrice.formatMoney( 0, ',', '.'));
    });

    $('.Quantitys').live('blur', function () {
        if ($(this).parent().parent().find('input').is(':checked')) {
            totalPrice = 0;
            var stNum = parseInt($(this).val(), 10);
            if (isNaN(stNum) || stNum < 1) {
                $(this).val('1');
            }
            $('#ulProName input[type*="checkbox"]:checked').each(function () {
                var tmQuan = $(this).parent().find('.Quantitys').val();
                totalPrice = parseInt(totalPrice, 10) + parseInt($(this).attr('rel'), 10) * parseInt(tmQuan, 10);
            });
            $('#ProductPrice').text(totalPrice.formatMoney(0, ',', '.'));
        }
    });
    $('#btnAddMore').click(function () {
        $('body, html').css('overflow', 'hidden');
        $('#LoseFocus').show();
        $.ajax({
            url: 'ListProduct.aspx',
            success: function (data) {
                $('#ContainAjax').css({
                    'left': $(window).width() / 2 - $('#ContainAjax').width() / 2,
                    'top': $(window).height() / 2 - $('#ContainAjax').height() / 2
                }).html(data).show();
            }
        });
    });
    $('.btnSearchPD').live('click', function () {
        $.ajax({
            url: 'AjaxSearchProductAdd.aspx',
            data: { 'Key': $('#txt_searchPd').val() == 'Nhập từ khóa cần tìm' ? '' : $('#txt_searchPd').val() },
            success: function (data) {
                var tmpDt = JSON.parse(data).aaData;
                var htmtp = '';
                for (var i = 0; i < tmpDt.length; i++) {
                    htmtp += '<li id = "' + tmpDt[i][0] + '">' + tmpDt[i][1] + '<span class = "Price" style = "float:right">' + tmpDt[i][2] + '</span></li>';
                }
                if (htmtp != '') {
                    $('.ProductList').html(htmtp);
                } else {
                    $('.ProductList').empty();
                    $('.ProductList').parent().text('Không có kết quả.');
                }
            }
        });
    });
    $('.ProductList li').live('click', function () {
        var curID = '';
        $('#ulProName input[type*="checkbox"]').each(function () {
            curID += $(this).attr('name') + '/';
        });
        if ($(this).is('.selectedPd')) {
            $(this).removeClass('selectedPd');
        } else if (curID.indexOf($(this).attr('id')) < 0) {
            $(this).addClass('selectedPd');
        } else {
            alert('Sản phẩm này đã có trong danh sách hiện tại.');
        }
    });
    $('#btnCancelPD').live('click', function () {
        $('#ContainAjax').fadeOut('normal');
        $('#LoseFocus').fadeOut('normal');
        $('body, html').css('overflow', 'auto');
    });
    $('#btnOkPD').live('click', function () {
        var htmlPDAdd = ''
        $('.selectedPd').each(function () {
            var tmpID = $(this).attr('id');
            var tmpUnit = $(this).attr('rel');
            var tmpPrice = $(this).find('.Price').text();
            var tmpName = $(this).find('.Name').text();
            htmlPDAdd += '<li><input type="checkbox" checked = "true" name="' + tmpID + '" rel="' + tmpPrice + '" />' + tmpName + '<div style ="float:right; width: 90px;"><input type="text" class="Quantitys" value="1" autocomplete="off" style="float:left"/><span style="float: right">' + tmpUnit + '</span></div></li>';
        });
        arrProductID.val(productsID);

        $('#ulProName').append(htmlPDAdd);

        totalPrice = 0;
        $('#ulProName input[type*="checkbox"]:checked').each(function () {
            var tmQuan = $(this).parent().find('.Quantitys').val();
            totalPrice = parseInt(totalPrice, 10) + parseInt($(this).attr('rel'), 10) * parseInt(tmQuan, 10);
        });
        $('#ProductPrice').text(totalPrice.formatMoney(0, ',', '.'));

        $('#ContainAjax').fadeOut('normal');
        $('#LoseFocus').fadeOut('normal');
        $('body, html').css('overflow', 'auto');
    });
    $('#form1').removeAttr('action');
    $('#txt_searchPd').live('keydown', function (e) {
        if (e.keyCode == 13) {
            $.ajax({
                url: 'AjaxSearchProductAdd.aspx',
                data: { 'Key': $('#txt_searchPd').val() == 'Nhập từ khóa cần tìm' ? '' : $('#txt_searchPd').val() },
                success: function (data) {
                    var tmpDt = JSON.parse(data).aaData;
                    var htmtp = '';
                    for (var i = 0; i < tmpDt.length; i++) {
                        htmtp += '<li id = "' + tmpDt[i][0] + '">' + tmpDt[i][1] + '<span class = "Price" style = "float:right">' + tmpDt[i][2] + '</span></li>';
                    }
                    if (htmtp != '') {
                        $('.ProductList').html(htmtp);
                    } else {
                        $('.ProductList').empty();
                        $('.ProductList').parent().text('Không có kết quả.');
                    }
                }
            });
            e.preventDefault();
        }
    });

    $('#imgThumnals img').click(function () {
        var srcs = $(this).attr('src');
        $('#thumbLarge').attr('src', srcs);
    });
    $('.btnCartBgs').click(function (e) {
       var  productsIDs = '';
        var productsCount = '';
        $('#ulProName input[type*="checkbox"]:checked').each(function () {
            var tmQuan = $(this).parent().find('.Quantitys').val();
            productsIDs += $(this).attr('name') + '/';
            productsCount += tmQuan + '/';
        });
        arrProductID.val(productsIDs);
        arrProductCount.val(productsCount);
    });
});